home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2011 November
/
CHIP_2011_11.iso
/
Programy
/
Inne
/
Gry
/
Carnage_Contest
/
scripts
/
CC Original
/
tools
/
Jackhammer.lua
< prev
next >
Wrap
Text File
|
2010-02-05
|
3KB
|
93 lines
--------------------------------------------------------------------------------
-- Weapon Jackhammer
-- Original Carnage Contest Weapon
-- Script by DC, August 2009, www.UnrealSoftware.de
--------------------------------------------------------------------------------
-- Setup Tables
if cc==nil then cc={} end
cc.jackhammer={}
-- Load & Prepare Ressources
cc.jackhammer.gfx_wpn=loadgfx("weapons/jackhammer.bmp") -- Weapon Image
setmidhandle(cc.jackhammer.gfx_wpn)
cc.jackhammer.sfx_attack=loadsfx("jackhammer.ogg") -- Attack Sound
cc.jackhammer.sfx_hitground=loadsfx("crumble.ogg") -- Hit Ground Sound
--------------------------------------------------------------------------------
-- Weapon: Jackhammer
--------------------------------------------------------------------------------
cc.jackhammer.id=addweapon("cc.jackhammer","Jackhammer",cc.jackhammer.gfx_wpn,2) -- Add Weapon (2 uses)
cc.jackhammer.ammo=15 -- 15 Digs
function cc.jackhammer.draw() -- Draw
-- Draw
if getplayeraction(0)==0 then
setblend(blend_alpha)
setalpha(1)
setcolor(255,255,255)
setscale(-getplayerdirection(0),1)
setrotation(0)
drawimage(cc.jackhammer.gfx_wpn,getplayerx(0),getplayery(0)+8)
end
if weapon_shots<=cc.jackhammer.ammo then
if weapon_mode==0 then
hudinfo("Hit [Space] once to activate the jackhammer!")
elseif weapon_shots<cc.jackhammer.ammo then
hudinfo("Hit [Space] again to deactivate the jackhammer!")
end
end
end
function cc.jackhammer.attack(attack) -- Attack
-- Timer
if weapon_timer>0 then
weapon_timer=weapon_timer-1
end
-- Activate
if (weapon_mode==0) and (attack==1) then
weapon_mode=1
elseif (weapon_mode==1) then
-- Cancel
weapon_charge=weapon_charge+1
if (attack==1) and (weapon_charge>=10) then
weapon_shots=cc.jackhammer.ammo
endturn()
end
end
-- Attack
if (weapon_mode==1) and (weapon_timer<=0) and (weapon_shots<cc.jackhammer.ammo) then
-- No more weapon switching!
useweapon(0)
-- Ground Collision
inc=0
if collision(col10x10,getplayerx(0),getplayery(0)+15,1,0)==1 then
inc=1
particle(p_smoke,getplayerx(0),getplayery(0)+10)
playsound(cc.jackhammer.sfx_hitground)
for j=1,3,1 do
terrainexplosion(getplayerx(0),getplayery(0)+j*4,15,2)
end
end
-- Player Collision
if collision(col10x10,getplayerx(0),getplayery(0)+18,0,1)==1 then
inc=1
if playercollision()~=0 and playercollision()~=playercurrent() then
playerdamage(playercollision(),2)
playsound(sfx_splatter1)
blood(getplayerx(0),getplayery(0)+14)
end
end
if inc==1 then
playsound(cc.jackhammer.sfx_attack)
weapon_shots=weapon_shots+1
weapon_timer=5
end
-- End Turn
if weapon_shots>=cc.jackhammer.ammo then
endturn()
end
end
end